package com.example.shiwuyouproject.utils

import android.graphics.BitmapFactory
import cn.sharesdk.framework.PlatformActionListener
import cn.sharesdk.framework.ShareSDK
import cn.sharesdk.onekeyshare.OnekeyShare
import cn.sharesdk.wechat.friends.Wechat
import com.example.shiwuyouproject.R
import com.example.shiwuyouproject.net.http.Api
import com.mob.MobSDK


object ShareUtils {
    /**
     * 我的收益分享
     */
    fun onRevenueInvitationShare(
            stTitle: String = "",
            titleUrl: String = "",
            setImageUrl: String = "",
            text: String = "") {
        onShare(
                stTitle,
                titleUrl,
                setImageUrl,
                text
        )

    }


    /**
     *stTitle 分享的title
     * TitleUrl 分享可点击链接
     * text 分享内容
     */
    private fun onShare(
        stTitle: String = "",
        titleUrl: String = "",
        setImageUrl: String = "",
        text: String = ""
    ) {
        val oks = OnekeyShare()
//        //比如分享到QQ，其他平台则只需要更换平台类名，例如Wechat.NAME则是微信
//        showShare(QQ.NAME);
//        //指定分享的平台，如果为空，还是会调用九宫格的平台列表界面
//        if (platform != null) {
//            oks.setPlatform(platform)
//        }
// title标题，印象笔记、邮箱、信息、微信、人人网和QQ空间使用
        oks.setTitle(stTitle)
//  titleUrl是标题的网络链接，仅在Linked-in,QQ和QQ空间使用
        oks.setTitleUrl(titleUrl)
// text是分享文本，所有平台都需要这个字段
        oks.text = text
// 分享网络图片，新浪微博分享网络图片需要通过审核后申请高级写入接口，否则请注释掉测试新浪微博
        if (setImageUrl.isNotEmpty()) {
            oks.setImageUrl(setImageUrl)
        } else {
            val bitmap = BitmapFactory.decodeResource(
                MobSDK.getContext().resources,
                R.mipmap.shiwuyou
            ) //将图片资源转成Bitmap
            oks.setImageData(bitmap)
        }
// url仅在微信（包括好友和朋友圈）中使用
        oks.setUrl(titleUrl)
// 启动分享GUI
        oks.show(MobSDK.getContext())

    }


    /**
     * 登录功能
     */
    fun onLogin(name: String, platformActionListener: PlatformActionListener) {
//        Wechat.NAME
        val plat = ShareSDK.getPlatform(name)
//移除授权状态和本地缓存，下次授权会重新授权
        plat.removeAccount(true)
//SSO授权，传false默认是客户端授权
        plat.SSOSetting(false)
//授权回调监听，监听oncomplete，onerror，oncancel三种状态
        plat.platformActionListener = platformActionListener
//抖音登录适配安卓9.0
//ShareSDK.setActivity(MainActivity.this)
//要数据不要功能，主要体现在不会重复出现授权界面
        plat.showUser(null)

    }
}